{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Arrays"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'numpy.ndarray'>\n",
      "(3,)\n",
      "1 2 3\n",
      "[5 2 3]\n"
     ]
    }
   ],
   "source": [
    "a = np.array([1, 2, 3])\n",
    "print(type(a))\n",
    "print(a.shape)\n",
    "print(a[0], a[1], a[2])\n",
    "a[0] = 5\n",
    "print(a)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(2, 3)\n",
      "1 2 4\n",
      "[1 2 3]\n",
      "[1 2]\n"
     ]
    }
   ],
   "source": [
    "b = np.array([[1, 2, 3], [4, 5, 6]])\n",
    "print(b.shape)\n",
    "print(b[0, 0], b[0, 1], b[1, 0])\n",
    "print(b[0])\n",
    "print(b[0,0:2])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[0. 0.]\n",
      " [0. 0.]]\n"
     ]
    }
   ],
   "source": [
    "a = np.zeros((2, 2))\n",
    "print(a)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[1. 1.]]\n"
     ]
    }
   ],
   "source": [
    "b = np.ones((1, 2))\n",
    "print(b)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[5 5]\n",
      " [5 5]]\n"
     ]
    }
   ],
   "source": [
    "c = np.full((2, 2), 5)\n",
    "print(c)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[1. 0.]\n",
      " [0. 1.]]\n"
     ]
    }
   ],
   "source": [
    "d = np.eye(2)\n",
    "print(d)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 0.92946926  0.99792969]\n",
      " [ 0.60826457  0.87270331]]\n"
     ]
    }
   ],
   "source": [
    "e = np.random.random((2, 2))\n",
    "print(e)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Array indexing"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 1  2  3  4]\n",
      " [ 5  6  7  8]\n",
      " [ 9 10 11 12]]\n",
      "2\n"
     ]
    }
   ],
   "source": [
    "a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])\n",
    "print(a)\n",
    "print(a[0, 1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[0.]\n",
      " [0.]]\n"
     ]
    }
   ],
   "source": [
    "b = a[:2, 1:3]\n",
    "print(b)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "77\n"
     ]
    }
   ],
   "source": [
    "b[0, 0] = 77\n",
    "print(a[0, 1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[5 6 7 8] (4,)\n",
      "[[5 6 7 8]] (1, 4)\n"
     ]
    }
   ],
   "source": [
    "a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])\n",
    "row_r1 = a[1, :]\n",
    "row_r2 = a[1:2, :]\n",
    "print(row_r1, row_r1.shape)\n",
    "print(row_r2, row_r2.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[ 2  6 10] (3,)\n",
      "[[ 2]\n",
      " [ 6]\n",
      " [10]] (3, 1)\n"
     ]
    }
   ],
   "source": [
    "col_r1 = a[:, 1]\n",
    "col_r2 = a[:, 1:2]\n",
    "print(col_r1, col_r1.shape)\n",
    "print(col_r2, col_r2.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1 4 5]\n",
      "[1 4 5]\n",
      "[2 2]\n",
      "[2 2]\n"
     ]
    }
   ],
   "source": [
    "a = np.array([[1, 2], [3, 4], [5, 6]])\n",
    "print(a[[0, 1, 2], [0, 1, 0]])\n",
    "print(np.array([a[0, 0], a[1, 1], a[2, 0]]))\n",
    "print(a[[0, 0], [1, 1]])\n",
    "print(np.array([a[0, 1], a[0, 1]]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 1  2  3]\n",
      " [ 4  5  6]\n",
      " [ 7  8  9]\n",
      " [10 11 12]]\n"
     ]
    }
   ],
   "source": [
    "a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])\n",
    "print(a)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[ 1  6  7 11]\n"
     ]
    }
   ],
   "source": [
    "b = np.array([0, 2, 0, 1])\n",
    "print(a[np.arange(4), b])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[11  2  3]\n",
      " [ 4  5 16]\n",
      " [17  8  9]\n",
      " [10 21 12]]\n"
     ]
    }
   ],
   "source": [
    "a[np.arange(4), b] += 10\n",
    "print(a)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[False False]\n",
      " [ True  True]\n",
      " [ True  True]]\n",
      "[3 4 5 6]\n",
      "[3 4 5 6]\n"
     ]
    }
   ],
   "source": [
    "a = np.array([[1, 2], [3, 4], [5, 6]])\n",
    "book_idx = (a > 2)\n",
    "print(book_idx)\n",
    "print(a[book_idx])\n",
    "print(a[a > 2])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Datatypes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "int64\n"
     ]
    }
   ],
   "source": [
    "x = np.array([1, 2])\n",
    "print(x.dtype)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "float64\n"
     ]
    }
   ],
   "source": [
    "x = np.array([1.0, 2.0])\n",
    "print(x.dtype)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "int64\n"
     ]
    }
   ],
   "source": [
    "x = np.array([1, 2], dtype=np.int64)\n",
    "print(x.dtype)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Array math"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[  6.   8.]\n",
      " [ 10.  12.]]\n",
      "[[  6.   8.]\n",
      " [ 10.  12.]]\n"
     ]
    }
   ],
   "source": [
    "x = np.array([[1, 2], [3, 4]], dtype=np.float64)\n",
    "y = np.array([[5, 6], [7, 8]], dtype=np.float64)\n",
    "print(x + y)\n",
    "print(np.add(x, y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[-4. -4.]\n",
      " [-4. -4.]]\n",
      "[[-4. -4.]\n",
      " [-4. -4.]]\n"
     ]
    }
   ],
   "source": [
    "print(x - y)\n",
    "print(np.subtract(x, y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 5 12]\n",
      " [21 32]]\n",
      "[[ 5 12]\n",
      " [21 32]]\n"
     ]
    }
   ],
   "source": [
    "print(x * y)\n",
    "print(np.multiply(x, y))   # element-wise"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 0.2         0.33333333]\n",
      " [ 0.42857143  0.5       ]]\n",
      "[[ 0.2         0.33333333]\n",
      " [ 0.42857143  0.5       ]]\n"
     ]
    }
   ],
   "source": [
    "print(x / y)\n",
    "print(np.divide(x, y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 1.          1.41421356]\n",
      " [ 1.73205081  2.        ]]\n"
     ]
    }
   ],
   "source": [
    "print(np.sqrt(x))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "219\n",
      "219\n"
     ]
    }
   ],
   "source": [
    "x = np.array([[1, 2], [3, 4]])\n",
    "y = np.array([[5, 6], [7, 8]])\n",
    "\n",
    "v = np.array([9, 10])\n",
    "w = np.array([11, 12])\n",
    "\n",
    "print(v.dot(w))\n",
    "print(np.dot(v, w))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[29 67]\n",
      "[29 67]\n"
     ]
    }
   ],
   "source": [
    "print(x.dot(v))\n",
    "print(np.dot(x, v))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[19 22]\n",
      " [43 50]]\n",
      "[[19 22]\n",
      " [43 50]]\n"
     ]
    }
   ],
   "source": [
    "print(x.dot(y))\n",
    "print(np.dot(x, y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "10\n",
      "10\n",
      "[3 7]\n"
     ]
    }
   ],
   "source": [
    "x = np.array([[1, 2], [3, 4]])\n",
    "print(np.sum(x))\n",
    "print(np.sum(x, axis=(0, 1)))\n",
    "print(np.sum(x, axis=1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[1 2]\n",
      " [3 4]]\n",
      "[[1 3]\n",
      " [2 4]]\n"
     ]
    }
   ],
   "source": [
    "x = np.array([[1, 2], [3, 4]])\n",
    "print(x)\n",
    "print(x.T)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1 2 3]\n",
      "[1 2 3]\n"
     ]
    }
   ],
   "source": [
    "v = np.array([1, 2, 3])\n",
    "print(v)\n",
    "print(v.T)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Broadcasting"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 2  2  4]\n",
      " [ 5  5  7]\n",
      " [ 8  8 10]\n",
      " [11 11 13]]\n"
     ]
    }
   ],
   "source": [
    "x = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])\n",
    "v = np.array([1, 0, 1])\n",
    "y = np.empty_like(x)\n",
    "  0\n",
    "for i in range(4):\n",
    "    y[i, :] = x[i, :] + v\n",
    "\n",
    "print(y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[1 0 1]\n",
      " [1 0 1]\n",
      " [1 0 1]\n",
      " [1 0 1]]\n"
     ]
    }
   ],
   "source": [
    "vv = np.tile(v, (4, 1))    \n",
    "print(vv)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 2  2  4]\n",
      " [ 5  5  7]\n",
      " [ 8  8 10]\n",
      " [11 11 13]]\n"
     ]
    }
   ],
   "source": [
    "y = x + vv\n",
    "print(y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 2  2  4]\n",
      " [ 5  5  7]\n",
      " [ 8  8 10]\n",
      " [11 11 13]]\n"
     ]
    }
   ],
   "source": [
    "y = x + v\n",
    "print(y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 4  5]\n",
      " [ 8 10]\n",
      " [12 15]]\n"
     ]
    }
   ],
   "source": [
    "v = np.array([1, 2, 3])\n",
    "w = np.array([4, 5])\n",
    "print(np.reshape(v, (3, 1)) * w)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[2 4 6]\n",
      " [5 7 9]]\n"
     ]
    }
   ],
   "source": [
    "x = np.array([[1, 2, 3], [4, 5, 6]])\n",
    "print(x + v)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 5  6  7]\n",
      " [ 9 10 11]]\n"
     ]
    }
   ],
   "source": [
    "print((x.T + w).T)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 5  6  7]\n",
      " [ 9 10 11]]\n"
     ]
    }
   ],
   "source": [
    "print(x + np.reshape(w, (2, 1)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 2  4  6]\n",
      " [ 8 10 12]]\n"
     ]
    }
   ],
   "source": [
    "print(x * 2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## SciPy"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Distance between points"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[0 1]\n",
      " [1 0]\n",
      " [2 0]]\n",
      "[1.41421356 2.23606798 1.        ]\n",
      "[[0.         1.41421356 2.23606798]\n",
      " [1.41421356 0.         1.        ]\n",
      " [2.23606798 1.         0.        ]]\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "from scipy.spatial.distance import pdist\n",
    "from scipy.spatial.distance import squareform\n",
    "\n",
    "x = np.array([[0, 1], [1, 0], [2, 0]])\n",
    "print(x)\n",
    "\n",
    "print(pdist(x, 'euclidean'))\n",
    "d = squareform(pdist(x, 'euclidean'))\n",
    "print(d)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Matplotlib"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plotting"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nKdXH/wMx3clddjjO9wAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10a662160>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "\n",
    "x = np.arange(0, 3 * np.pi, 0.1)\n",
    "y = np.sin(x)\n",
    "\n",
    "plt.plot(x, y)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nfzMXhJO6g5/uAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10c4e6a58>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = np.arange(0, 3 * np.pi, 0.1)\n",
    "y_sin = np.sin(x)\n",
    "y_cos = np.cos(x)\n",
    "\n",
    "plt.plot(x, y_sin)\n",
    "plt.plot(x, y_cos)\n",
    "plt.xlabel('x axis label')\n",
    "plt.ylabel('y axis label')\n",
    "plt.title('Sine and Cosine')\n",
    "plt.legend(['Sine', 'Cosine'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Subplots"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n+mx6t23OzLHxZz1s0dKKy2t46PNt/JSex5iebXhxaFer+CAJx5N84AR3LEyiorqON0Z259purYyO\n9P9ZlpzDk8t30MzTlbkTE23qMOJzLXb59P+Nypo67vwkmTnrs5nYN4KFk3pZXakD+Hm6MPuWRO65\noj2LNx9i0oIkSqtqjY4lHMyPu44xdvZGvN2c+eruS6yy1AFuTAjly7v6ohSM+nAjv2cWGB3J7KTY\nz6C4oobxczexZnceLw7twvPXd8HFikfBSike/kdH/j28G+szCxj5wQbySiqNjiUcxOLNB7ljYRLR\nwT4sm9LX6s+16NLajy/v6kuIvwcTP9rMVymHjY5kVtbbVAbKK6lk1Icb2HaoiBlj4hjfJ8LoSOds\nTM8w5k5I5MDxMkbN2siR4gqjIwk7997PGTzx5Q76dwhi8eTeVrlV+1da+Xmw9M4+JIQ3Y+pn21jw\nx36jI5mNFPv/OFZSyahZGzlYWM68iT0YEtPa6Ejn7fKOLVg4qScFJ6u46cMNHCosNzqSsFPv/rSX\nN3/Yy/C4EGbfknhRZ48awc/DhQW39eSazi157uudzFufbXQks5BiP03eyUrGzN5IXkklCyf15NKo\ns16oxGolhDfnk9t7UVxew+hZGzlwvMzoSMLOvPvTXt79KYMRCaG8MbK7VU9V/h03ZxMzb45nYJdg\nXli5iznrsoyOdNFs8zfRBPJPVjF29iaOFlcy/7aeVnM448Xo3safT//Zm/LqWsbO3iTTMsJspv2U\n8d9Sf+3GmL9dsMsWuJicmDE2jmu7BfPSt+k2X+5S7DQcLjhuziYOn6hg3sQe9Iiw/VI/pWuIHwsn\n9aKkouE1Hi+tMjqSsHHz1mfzzk97uTHePkr9FBeTE9NG/1+5f550yOhIF8zhi72ypo5JC7aQXVDG\nnAmJ9G4bYHQks+sa4secCYnknKhgwkebKamsMTqSsFFfpRzmhZW7GNglmNdH2E+pn+JicuKdUbFc\nGhXI41/u4IedR42OdEEcuthr6+q559MUkg+e4O1R3bmkfaDRkZpMr7YBfDAugd1HTvLPBUlU1dYZ\nHUnYmLV78nj481T6tA3g3dGxdlfqp7g5m/hgXAJdQ/y4Z3EKG/YdNzrSeXPYYtda8/RXafyUfozn\nr+tik0e/nK8rolvw1k3d2ZRdyKNfbKe+3vJnHQvblHqoiCmfJBPdyodZtyTY5UUsTufl5sz8iT0I\n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\nRK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10c53ceb8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = np.arange(0, 3 * np.pi, 0.1)\n",
    "y_sin = np.sin(x)\n",
    "y_cos = np.cos(x)\n",
    "\n",
    "plt.subplot(2, 1, 1)\n",
    "plt.plot(x, y_sin)\n",
    "plt.title('Sine')\n",
    "\n",
    "plt.subplot(2, 1, 2)\n",
    "plt.plot(x, y_cos)\n",
    "plt.title('Cosine')\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
